home *** CD-ROM | disk | FTP | other *** search
/ Mac Power 1997 January / macpower199701.bin / AMUG / Internet_24 / File eXpress 1.2.sit / File eXpress 1.2v0 / FX•Goodies! / FX•Mailer 1.0v0 / FX"Mailer 1.0v0 / cards.xml < prev    next >
Encoding:
Text File  |  1996-04-10  |  51.1 KB  |  1,082 lines

  1. card_4782.xml
  2. <?xml version="1.0" encoding="utf-8" ?>
  3. <!DOCTYPE card PUBLIC "-//Apple, Inc.//DTD card V 2.0//EN" "" >
  4. <card>
  5.     <id>4782</id>
  6.     <filler1>0</filler1>
  7.     <cantDelete> <false /> </cantDelete>
  8.     <showPict> <true /> </showPict>
  9.     <dontSearch> <false /> </dontSearch>
  10.     <owner>4221</owner>
  11.     <link rel="stylesheet" type="text/css" href="stylesheet_3254.css" />
  12.     <content>
  13.         <layer>background</layer>
  14.         <id>1</id>
  15.         <text> 04/10/96-05:16PM  Recompiling AppleScript S窶ヲ =>Ruskin[]          947963</text>
  16.     </content>
  17.     <content>
  18.         <layer>background</layer>
  19.         <id>2</id>
  20.         <text>Date:    04/10/96-05:16PM
  21. From:    Ruskin[]
  22.          Ruskin.
  23. To:      Ruskin[]
  24. Subject: Recompiling AppleScript Scripts in FX窶「Mailer
  25.  
  26. NOTE FOR FX窶「MAILER USERS:
  27. If you are continually being asked to "locate" the FX窶「Engine, FX窶「Packager or HyperCard while using the FX窶「Mailer stack, you may need to recompile the AppleScript scripts in the FX窶「Mailer Stack.  To display the AppleScript scripts (which have been placed in buttons), hold down the "option" key and click on the "FX" label in the upper left corner of the current window.  Note, both the Reader and Compose cards contain AppleScript scripts in buttons that may have to be recompiled so be sure to "option-click" on the "FX" label in both windows.  Display and Save the scripts that are attached to each of the AppleScript based buttons.  Once you've recompiled the scripts, AppleScript will no longer ask you to locate the engine or packager.  You may re-hide the AppleScript buttons by "option-clicking" on the "FX" labels.</text>
  28.     </content>
  29.     <name></name>
  30.     <script></script>
  31. </card>
  32.  
  33.  
  34. card_6042.xml
  35. <?xml version="1.0" encoding="utf-8" ?>
  36. <!DOCTYPE card PUBLIC "-//Apple, Inc.//DTD card V 2.0//EN" "" >
  37. <card>
  38.     <id>6042</id>
  39.     <filler1>0</filler1>
  40.     <cantDelete> <true /> </cantDelete>
  41.     <showPict> <true /> </showPict>
  42.     <dontSearch> <true /> </dontSearch>
  43.     <owner>4221</owner>
  44.     <link rel="stylesheet" type="text/css" href="stylesheet_3254.css" />
  45.     <content>
  46.         <layer>background</layer>
  47.         <id>1</id>
  48.         <text>Empty Caption - Master Template for this Background</text>
  49.     </content>
  50.     <content>
  51.         <layer>background</layer>
  52.         <id>2</id>
  53.         <text>Empty Body - Master Template for this Background</text>
  54.     </content>
  55.     <name>templateCard</name>
  56.     <script></script>
  57. </card>
  58.  
  59.  
  60. card_3818.xml
  61. <?xml version="1.0" encoding="utf-8" ?>
  62. <!DOCTYPE card PUBLIC "-//Apple, Inc.//DTD card V 2.0//EN" "" >
  63. <card>
  64.     <id>3818</id>
  65.     <filler1>0</filler1>
  66.     <bitmap>BMAP_4496.pbm</bitmap>
  67.     <cantDelete> <true /> </cantDelete>
  68.     <showPict> <true /> </showPict>
  69.     <dontSearch> <false /> </dontSearch>
  70.     <owner>2577</owner>
  71.     <link rel="stylesheet" type="text/css" href="stylesheet_3254.css" />
  72.     <part>
  73.         <id>1</id>
  74.         <type>field</type>
  75.         <visible> <true /> </visible>
  76.         <dontWrap> <true /> </dontWrap>
  77.         <dontSearch> <false /> </dontSearch>
  78.         <sharedText> <false /> </sharedText>
  79.         <fixedLineHeight> <false /> </fixedLineHeight>
  80.         <autoTab> <false /> </autoTab>
  81.         <lockText> <false /> </lockText>
  82.         <rect>
  83.             <left>61</left>
  84.             <top>29</top>
  85.             <right>320</right>
  86.             <bottom>46</bottom>
  87.         </rect>
  88.         <style>rectangle</style>
  89.         <autoSelect> <false /> </autoSelect>
  90.         <showLines> <false /> </showLines>
  91.         <wideMargins> <false /> </wideMargins>
  92.         <multipleLines> <false /> </multipleLines>
  93.         <reservedFamily> 0 </reservedFamily>
  94.         <titleWidth>0</titleWidth>
  95.         <icon>0</icon>
  96.         <textAlign>left</textAlign>
  97.         <font>Geneva</font>
  98.         <textSize>9</textSize>
  99.         <textStyle>plain</textStyle>
  100.         <textHeight>12</textHeight>
  101.         <name>sendtoFld</name>
  102.         <script>on closeField
  103. put line 1 of me into me
  104. end closeField</script>
  105.     </part>
  106.     <part>
  107.         <id>2</id>
  108.         <type>field</type>
  109.         <visible> <true /> </visible>
  110.         <dontWrap> <true /> </dontWrap>
  111.         <dontSearch> <false /> </dontSearch>
  112.         <sharedText> <false /> </sharedText>
  113.         <fixedLineHeight> <false /> </fixedLineHeight>
  114.         <autoTab> <false /> </autoTab>
  115.         <lockText> <false /> </lockText>
  116.         <rect>
  117.             <left>61</left>
  118.             <top>53</top>
  119.             <right>320</right>
  120.             <bottom>70</bottom>
  121.         </rect>
  122.         <style>rectangle</style>
  123.         <autoSelect> <false /> </autoSelect>
  124.         <showLines> <false /> </showLines>
  125.         <wideMargins> <false /> </wideMargins>
  126.         <multipleLines> <false /> </multipleLines>
  127.         <reservedFamily> 0 </reservedFamily>
  128.         <titleWidth>0</titleWidth>
  129.         <icon>0</icon>
  130.         <textAlign>left</textAlign>
  131.         <font>Geneva</font>
  132.         <textSize>9</textSize>
  133.         <textStyle>plain</textStyle>
  134.         <textHeight>12</textHeight>
  135.         <name>subjectFld</name>
  136.         <script>on closeField
  137. put line 1 of me into me
  138. end closeField</script>
  139.     </part>
  140.     <part>
  141.         <id>3</id>
  142.         <type>field</type>
  143.         <visible> <true /> </visible>
  144.         <dontWrap> <false /> </dontWrap>
  145.         <dontSearch> <true /> </dontSearch>
  146.         <sharedText> <false /> </sharedText>
  147.         <fixedLineHeight> <false /> </fixedLineHeight>
  148.         <autoTab> <false /> </autoTab>
  149.         <lockText> <false /> </lockText>
  150.         <rect>
  151.             <left>5</left>
  152.             <top>80</top>
  153.             <right>410</right>
  154.             <bottom>244</bottom>
  155.         </rect>
  156.         <style>scrolling</style>
  157.         <autoSelect> <false /> </autoSelect>
  158.         <showLines> <false /> </showLines>
  159.         <wideMargins> <true /> </wideMargins>
  160.         <multipleLines> <false /> </multipleLines>
  161.         <reservedFamily> 0 </reservedFamily>
  162.         <titleWidth>0</titleWidth>
  163.         <icon>0</icon>
  164.         <textAlign>left</textAlign>
  165.         <font>Monaco</font>
  166.         <textSize>9</textSize>
  167.         <textStyle>plain</textStyle>
  168.         <textHeight>12</textHeight>
  169.         <name>messageFld</name>
  170.         <script></script>
  171.     </part>
  172.     <part>
  173.         <id>4</id>
  174.         <type>button</type>
  175.         <visible> <true /> </visible>
  176.         <reserved5> 0 </reserved5>
  177.         <reserved4> 0 </reserved4>
  178.         <reserved3> 0 </reserved3>
  179.         <reserved2> 0 </reserved2>
  180.         <reserved1> 0 </reserved1>
  181.         <enabled> <true /> </enabled>
  182.         <rect>
  183.             <left>354</left>
  184.             <top>247</top>
  185.             <right>410</right>
  186.             <bottom>260</bottom>
  187.         </rect>
  188.         <style>standard</style>
  189.         <showName> <true /> </showName>
  190.         <highlight> <false /> </highlight>
  191.         <autoHighlight> <true /> </autoHighlight>
  192.         <sharedHighlight> <true /> </sharedHighlight>
  193.         <family>0</family>
  194.         <titleWidth>0</titleWidth>
  195.         <icon>0</icon>
  196.         <textAlign>center</textAlign>
  197.         <font>Geneva</font>
  198.         <textSize>9</textSize>
  199.         <textStyle>plain</textStyle>
  200.         <name>Send Now!</name>
  201.         <script>on mouseUp
  202. if cd field sendtofld is not empty then
  203. set cursor to busy
  204. set the hilite of me to true
  205. sendMessage -- see card script for this handler
  206. set the hilite of me to false
  207. else
  208. answer "Sorry, FX窶「Mailer cannot send your message.  Please enter an address in the 窶彜end To:窶."
  209. end if
  210. end mouseUp</script>
  211.     </part>
  212.     <part>
  213.         <id>5</id>
  214.         <type>button</type>
  215.         <visible> <true /> </visible>
  216.         <reserved5> 0 </reserved5>
  217.         <reserved4> 0 </reserved4>
  218.         <reserved3> 0 </reserved3>
  219.         <reserved2> 0 </reserved2>
  220.         <reserved1> 0 </reserved1>
  221.         <enabled> <true /> </enabled>
  222.         <rect>
  223.             <left>325</left>
  224.             <top>56</top>
  225.             <right>410</right>
  226.             <bottom>69</bottom>
  227.         </rect>
  228.         <style>standard</style>
  229.         <showName> <true /> </showName>
  230.         <highlight> <false /> </highlight>
  231.         <autoHighlight> <true /> </autoHighlight>
  232.         <sharedHighlight> <true /> </sharedHighlight>
  233.         <family>0</family>
  234.         <titleWidth>0</titleWidth>
  235.         <icon>0</icon>
  236.         <textAlign>center</textAlign>
  237.         <font>Geneva</font>
  238.         <textSize>9</textSize>
  239.         <textStyle>plain</textStyle>
  240.         <name>Clear Compose</name>
  241.         <script>on mouseUp
  242. put empty into cd fld sendtoFld
  243. put empty into cd fld subjectFld
  244. put empty into cd fld messageFld
  245. end mouseUp</script>
  246.     </part>
  247.     <part>
  248.         <id>6</id>
  249.         <type>button</type>
  250.         <visible> <true /> </visible>
  251.         <reserved5> 0 </reserved5>
  252.         <reserved4> 0 </reserved4>
  253.         <reserved3> 0 </reserved3>
  254.         <reserved2> 0 </reserved2>
  255.         <reserved1> 0 </reserved1>
  256.         <enabled> <true /> </enabled>
  257.         <rect>
  258.             <left>323</left>
  259.             <top>30</top>
  260.             <right>390</right>
  261.             <bottom>44</bottom>
  262.         </rect>
  263.         <style>checkbox</style>
  264.         <showName> <true /> </showName>
  265.         <highlight> <true /> </highlight>
  266.         <autoHighlight> <true /> </autoHighlight>
  267.         <sharedHighlight> <true /> </sharedHighlight>
  268.         <family>0</family>
  269.         <titleWidth>0</titleWidth>
  270.         <icon>0</icon>
  271.         <textAlign>center</textAlign>
  272.         <font>Geneva</font>
  273.         <textSize>9</textSize>
  274.         <textStyle>plain</textStyle>
  275.         <name>Keep Copy</name>
  276.         <script></script>
  277.     </part>
  278.     <part>
  279.         <id>9</id>
  280.         <type>button</type>
  281.         <visible> <false /> </visible>
  282.         <reserved5> 0 </reserved5>
  283.         <reserved4> 0 </reserved4>
  284.         <reserved3> 0 </reserved3>
  285.         <reserved2> 0 </reserved2>
  286.         <reserved1> 0 </reserved1>
  287.         <enabled> <false /> </enabled>
  288.         <rect>
  289.             <left>302</left>
  290.             <top>2</top>
  291.             <right>413</right>
  292.             <bottom>18</bottom>
  293.         </rect>
  294.         <style>opaque</style>
  295.         <showName> <true /> </showName>
  296.         <highlight> <false /> </highlight>
  297.         <autoHighlight> <false /> </autoHighlight>
  298.         <sharedHighlight> <true /> </sharedHighlight>
  299.         <family>0</family>
  300.         <titleWidth>0</titleWidth>
  301.         <icon>0</icon>
  302.         <textAlign>center</textAlign>
  303.         <font>Chicago</font>
  304.         <textSize>12</textSize>
  305.         <textStyle>plain</textStyle>
  306.         <name>asSendFile</name>
  307.         <script></script>
  308.     </part>
  309.     <part>
  310.         <id>16</id>
  311.         <type>button</type>
  312.         <visible> <true /> </visible>
  313.         <reserved5> 0 </reserved5>
  314.         <reserved4> 0 </reserved4>
  315.         <reserved3> 0 </reserved3>
  316.         <reserved2> 0 </reserved2>
  317.         <reserved1> 0 </reserved1>
  318.         <enabled> <true /> </enabled>
  319.         <rect>
  320.             <left>6</left>
  321.             <top>247</top>
  322.             <right>62</right>
  323.             <bottom>260</bottom>
  324.         </rect>
  325.         <style>standard</style>
  326.         <showName> <true /> </showName>
  327.         <highlight> <false /> </highlight>
  328.         <autoHighlight> <true /> </autoHighlight>
  329.         <sharedHighlight> <true /> </sharedHighlight>
  330.         <family>0</family>
  331.         <titleWidth>0</titleWidth>
  332.         <icon>0</icon>
  333.         <textAlign>center</textAlign>
  334.         <font>Geneva</font>
  335.         <textSize>9</textSize>
  336.         <textStyle>plain</textStyle>
  337.         <name>Reader窶ヲ</name>
  338.         <script>on mouseUp
  339. go card readerCard
  340. end mouseUp</script>
  341.     </part>
  342.     <part>
  343.         <id>18</id>
  344.         <type>button</type>
  345.         <visible> <true /> </visible>
  346.         <reserved5> 0 </reserved5>
  347.         <reserved4> 0 </reserved4>
  348.         <reserved3> 0 </reserved3>
  349.         <reserved2> 0 </reserved2>
  350.         <reserved1> 0 </reserved1>
  351.         <enabled> <true /> </enabled>
  352.         <rect>
  353.             <left>2</left>
  354.             <top>2</top>
  355.             <right>28</right>
  356.             <bottom>18</bottom>
  357.         </rect>
  358.         <style>transparent</style>
  359.         <showName> <false /> </showName>
  360.         <highlight> <false /> </highlight>
  361.         <autoHighlight> <false /> </autoHighlight>
  362.         <sharedHighlight> <true /> </sharedHighlight>
  363.         <family>0</family>
  364.         <titleWidth>0</titleWidth>
  365.         <icon>0</icon>
  366.         <textAlign>center</textAlign>
  367.         <font>Chicago</font>
  368.         <textSize>12</textSize>
  369.         <textStyle>plain</textStyle>
  370.         <name>Show AppleScript Buttons</name>
  371.         <script>on mouseUp
  372. if the optionkey is down then
  373. if the visible of cd button asSendFile is true then
  374. set the visible of cd button asSendFile to false
  375. else
  376. set the visible of cd button asSendFile to true
  377. end if
  378. end if
  379. end mouseUp</script>
  380.     </part>
  381.     <part>
  382.         <id>21</id>
  383.         <type>button</type>
  384.         <visible> <true /> </visible>
  385.         <reserved5> 0 </reserved5>
  386.         <reserved4> 0 </reserved4>
  387.         <reserved3> 0 </reserved3>
  388.         <reserved2> 0 </reserved2>
  389.         <reserved1> 0 </reserved1>
  390.         <enabled> <true /> </enabled>
  391.         <rect>
  392.             <left>393</left>
  393.             <top>1</top>
  394.             <right>412</right>
  395.             <bottom>19</bottom>
  396.         </rect>
  397.         <style>transparent</style>
  398.         <showName> <false /> </showName>
  399.         <highlight> <false /> </highlight>
  400.         <autoHighlight> <false /> </autoHighlight>
  401.         <sharedHighlight> <true /> </sharedHighlight>
  402.         <family>0</family>
  403.         <titleWidth>0</titleWidth>
  404.         <icon>26635</icon>
  405.         <textAlign>center</textAlign>
  406.         <font>Chicago</font>
  407.         <textSize>12</textSize>
  408.         <textStyle>plain</textStyle>
  409.         <name></name>
  410.         <script>on mouseUp
  411. set the visible of cd button coverUp to true
  412. set the visible of cd fld composeHelp to true
  413. end mouseUp</script>
  414.     </part>
  415.     <part>
  416.         <id>22</id>
  417.         <type>button</type>
  418.         <visible> <false /> </visible>
  419.         <reserved5> 0 </reserved5>
  420.         <reserved4> 0 </reserved4>
  421.         <reserved3> 0 </reserved3>
  422.         <reserved2> 0 </reserved2>
  423.         <reserved1> 0 </reserved1>
  424.         <enabled> <true /> </enabled>
  425.         <rect>
  426.             <left>1</left>
  427.             <top>1</top>
  428.             <right>414</right>
  429.             <bottom>262</bottom>
  430.         </rect>
  431.         <style>transparent</style>
  432.         <showName> <false /> </showName>
  433.         <highlight> <false /> </highlight>
  434.         <autoHighlight> <false /> </autoHighlight>
  435.         <sharedHighlight> <true /> </sharedHighlight>
  436.         <family>0</family>
  437.         <titleWidth>0</titleWidth>
  438.         <icon>0</icon>
  439.         <textAlign>center</textAlign>
  440.         <font>Chicago</font>
  441.         <textSize>12</textSize>
  442.         <textStyle>plain</textStyle>
  443.         <name>coverUp</name>
  444.         <script>on mouseUp
  445. send mouseUp to cd fld "composeHelp"
  446. end mouseUp</script>
  447.     </part>
  448.     <part>
  449.         <id>23</id>
  450.         <type>field</type>
  451.         <visible> <false /> </visible>
  452.         <dontWrap> <false /> </dontWrap>
  453.         <dontSearch> <false /> </dontSearch>
  454.         <sharedText> <false /> </sharedText>
  455.         <fixedLineHeight> <false /> </fixedLineHeight>
  456.         <autoTab> <false /> </autoTab>
  457.         <lockText> <true /> </lockText>
  458.         <rect>
  459.             <left>8</left>
  460.             <top>72</top>
  461.             <right>406</right>
  462.             <bottom>240</bottom>
  463.         </rect>
  464.         <style>shadow</style>
  465.         <autoSelect> <false /> </autoSelect>
  466.         <showLines> <false /> </showLines>
  467.         <wideMargins> <true /> </wideMargins>
  468.         <multipleLines> <false /> </multipleLines>
  469.         <reservedFamily> 0 </reservedFamily>
  470.         <titleWidth>0</titleWidth>
  471.         <icon>0</icon>
  472.         <textAlign>left</textAlign>
  473.         <font>Geneva</font>
  474.         <textSize>12</textSize>
  475.         <textStyle>plain</textStyle>
  476.         <textHeight>16</textHeight>
  477.         <name>composeHelp</name>
  478.         <script>on mouseUp
  479. set the visible of cd button coverUp to false
  480. set the visible of me to false
  481. end mouseUp</script>
  482.     </part>
  483.     <content>
  484.         <layer>card</layer>
  485.         <id>23</id>
  486.         <text><span class="style2">sing the FX窶「Compose Window
  487. </span><span class="style1">
  488. To send a message, enter the destination address (or addresses) in the 窶彜end To:窶 field, a brief title in the 窶彜ubject窶 field and the text of your message in the primary text field after that.  When you're ready to send your message, simply click on the 窶彜end Now!窶 button.
  489.  
  490. Remember to use valid FX窶「Packager addresses in the 窶彜end To:窶 field like 窶廱ulie[Marketing]窶 or 窶彗Mac.bigCorp.Com窶.
  491.  
  492. To return to reading your mail click on the 窶彝eader窶ヲ窶 button.</span></text>
  493.     </content>
  494.     <name>composeCard</name>
  495.     <script>-- FX窶「Mailer - Compose Card Script
  496. -- Last Modified: 8/14/95 by MMM
  497. -- A freeware script provided by the Ruskin Group, Inc.
  498. -- This stack may be used for any non-commercial purposes.
  499.  
  500. -- This handler turns the message into a temporary file and then
  501. -- calls an AppleScript handler to send that file via an FX窶「Packager
  502. on sendMessage
  503. global FXtempfileName
  504. set the cursor to busy
  505.  
  506. makeMailFile  -- take the message and save it in a temporary file
  507.  
  508. -- We need to convert the address line into a canonical list
  509. -- for AppleScript.  The engine is expecting a list of strings that
  510. -- look like: "addr1","addr2","addr3"
  511. -- Note each item is seperated by a comma and enclosed in quotes!
  512.  
  513. put quote&(item 1 of cd fld sendTofld) into canonicalAddr
  514.  
  515. put (number of items of cd fld sendToFld) into numOfAddrs
  516.  
  517. if numOfAddrs 竕・ 1 then
  518. repeat with itemCounter = 2 to (number of items of cd fld sendToFld)
  519. put quote&comma&quote&(item itemCounter of cd fld sendToFld) after canonicalAddr
  520. end repeat
  521. end if
  522.  
  523. -- Add the final quote...
  524. put quote after canonicalAddr
  525.  
  526. -- Now we'll hand off to an AppleScript script to do the dirty work...
  527. put "sendMessage "&quote&FXtempfileName&quote&","& ツャ
  528. numOfAddrs into sendParm
  529.  
  530. global globalAddr
  531. put cd fld sendToFld into globalAddr
  532.  
  533. send sendParm to cd button "asSendFile"
  534.  
  535. end sendMessage
  536.  
  537.  
  538. -- This handler creates the temporary file that contains
  539. -- the user's message in a canonical format.  We'll then use
  540. -- File eXpress to send that file to its destination.
  541. on makeMailFile
  542. global FXstackVersion, FXuserATName, FXuserIPName, FXtempFileName
  543. set the cursor to busy
  544.  
  545. put getDriveName() into theDrive
  546. put theDrive&":Temporary Items:"&(the ticks)&".fxmsg" into tempFileName
  547. open file tempFileName
  548. -- Just in case we can't find "Temporary Items"...
  549. if the result is not empty then
  550. put theDrive&":"&(the ticks)&".fxmsg" into tempFileName
  551. answer "Couldn窶冲 use 窶弋emporary Items窶 folder, please delete 窶˜.fxmsg窶™ files at your convenience."
  552. open file tempFileName
  553. end if
  554. if the result is empty then
  555. put buildDateTimeStamp() into dateAndTime
  556. write "[FX窶「Mail-"&FXstackVersion&"|"&(the ticks)&"|"&(random(the ticks))&"]"&return to file tempFileName
  557. write "Date:    "&dateAndTime&return to file tempFileName
  558. if (FXuserATName is empty) then
  559. write "From:    <No AppleTalk Address Available>"&return to file tempFileName
  560. else
  561. write "From:    "&FXuserATName&return to file tempFileName
  562. end if
  563. if (FXuserIPName is empty) then
  564. write "         <No TCP/IP Address Available>"&return to file tempFileName
  565. else
  566. write "         "&FXuserIPName&return to file tempFileName
  567. end if
  568. write "To:      "&(cd fld sendtoFld)&return to file tempFileName
  569. write "Subject: "&(cd fld subjectFld)&return to file tempFileName
  570. write return to file tempFileName
  571. write (cd fld messageFld) to file tempFileName
  572. close file tempFileName
  573.  
  574. if the hilite of card button "Keep Copy" is true then
  575. keepCopyOfMail dateAndTime
  576. end if
  577. else
  578. answer "Error with temp file: 窶œ"&the result&"窶 - message not sent."
  579. exit to hypercard -- abort now or face the consequences...
  580. end if
  581.  
  582. put tempFileName into FXtempFileName -- We'll want to delete this later...
  583.  
  584. end makeMailFile
  585.  
  586.  
  587. -- If the user had checked the "Keep Copy" options, then this routine
  588. -- is called and will copy the message in the compose card to the
  589. -- "rawMessages" background.  This keeps ups from actually having to
  590. -- use the packager to "send" a message to ourselves.
  591. on keepCopyOfMail dateAndTime
  592. global FXstackVersion, FXuserATName, FXuserIPName, FXtempFileName
  593. global FXcaptionsNeedUpdating
  594.  
  595. -- Set FXcaptionsNeedUpdating to true so that when it is checked
  596. -- by the openCard handler of the Reader Card we update the captions list.
  597. -- We only need to do this as we're "sneaking" this message into the stack
  598. -- to save the time of actually sending it to ourselves.
  599. put true into FXcaptionsNeedUpdating
  600.  
  601. set the cursor to busy
  602.  
  603. lock screen
  604. lock messages
  605. set the cursor to busy
  606.  
  607. -- Build the rawCaption Item
  608. put "窶「"&dateAndTime into tempCaption
  609. put "  " after tempCaption
  610. put char 1 to 25 of cd fld subjectFld after tempCaption
  611. repeat with i = (length of tempCaption) to 45
  612. put " " after tempCaption
  613. end repeat
  614. if char 34 of cd fld subjectFld is not empty then put "窶ヲ" into char 45 of tempCaption
  615. put "=>"&char 1 to 15 of cd fld sendtoFld after tempCaption
  616. repeat with i = (length of tempCaption) to 65
  617. put " " after tempCaption
  618. end repeat
  619. put (the ticks) after tempCaption
  620.  
  621. -- Build the rawBody Item
  622. put "Date:    "&(buildDateTimeStamp())&return into tempBody
  623. if (FXuserATName is empty) then
  624. put "From:    <No AppleTalk Address Available>"&return after tempBody
  625. else
  626. put "From:    "&FXuserATName&return after tempBody
  627. end if
  628. if (FXuserIPName is empty) then
  629. put "         <No TCP/IP Address Available>"&return after tempBody
  630. else
  631. put "         "&FXuserIPName&return after tempBody
  632. end if
  633. put "To:      "&(cd fld sendtoFld)&return after tempBody
  634. put "Subject: "&(cd fld subjectFld)&return after tempBody
  635. put return after tempBody
  636. put (cd fld messageFld) after tempBody
  637.  
  638. -- Now create "rawMessages" background card and 'keep copy' of message...
  639. push card
  640. go to last card of background rawmessages
  641. domenu "New Card"
  642. put tempCaption into field rawCaption
  643. put tempBody into field rawBody
  644. pop card
  645. end keepCopyOfMail
  646.  
  647. on openCard
  648. global FXoriginalTextArrows
  649. -- We like textArrows off for the compose card,
  650. -- but save the old value to restore on close card...
  651. put the textArrows into FXoriginalTextArrows
  652. set the textArrows to true
  653. -- Update the FX窶「Mailer Menu
  654. set the enabled of menuItem "Read Messages" of menu "FX窶「Mailer" to true
  655. set the enabled of menuItem "Compose Message" of menu "FX窶「Mailer" to false
  656.  
  657. send mouseDown to cd field sendToFld
  658.  
  659. end openCard
  660.  
  661. on closeCard
  662. global FXoriginalTextArrows
  663. -- Restore the value of textArrows to what it was before openCard
  664. set the textArrows to FXoriginalTextArrows
  665. end closeCard
  666.  
  667. -- Allow the enter-key to act as the "Send Now!" button窶ヲ
  668. on enterInfield
  669. send mouseUp to cd button "Send Now!"
  670. end enterInfield</script>
  671. </card>
  672.  
  673.  
  674. card_3051.xml
  675. <?xml version="1.0" encoding="utf-8" ?>
  676. <!DOCTYPE card PUBLIC "-//Apple, Inc.//DTD card V 2.0//EN" "" >
  677. <card>
  678.     <id>3051</id>
  679.     <filler1>0</filler1>
  680.     <bitmap>BMAP_3999.pbm</bitmap>
  681.     <cantDelete> <true /> </cantDelete>
  682.     <showPict> <true /> </showPict>
  683.     <dontSearch> <false /> </dontSearch>
  684.     <owner>2577</owner>
  685.     <link rel="stylesheet" type="text/css" href="stylesheet_3254.css" />
  686.     <part>
  687.         <id>1</id>
  688.         <type>field</type>
  689.         <visible> <true /> </visible>
  690.         <dontWrap> <true /> </dontWrap>
  691.         <dontSearch> <false /> </dontSearch>
  692.         <sharedText> <false /> </sharedText>
  693.         <fixedLineHeight> <false /> </fixedLineHeight>
  694.         <autoTab> <false /> </autoTab>
  695.         <lockText> <true /> </lockText>
  696.         <rect>
  697.             <left>5</left>
  698.             <top>24</top>
  699.             <right>410</right>
  700.             <bottom>85</bottom>
  701.         </rect>
  702.         <style>scrolling</style>
  703.         <autoSelect> <true /> </autoSelect>
  704.         <showLines> <false /> </showLines>
  705.         <wideMargins> <true /> </wideMargins>
  706.         <multipleLines> <false /> </multipleLines>
  707.         <reservedFamily> 0 </reservedFamily>
  708.         <selectedLines>
  709.             <integer>1</integer>
  710.         </selectedLines>
  711.         <textAlign>left</textAlign>
  712.         <font>Monaco</font>
  713.         <textSize>9</textSize>
  714.         <textStyle>plain</textStyle>
  715.         <textHeight>12</textHeight>
  716.         <name>captions</name>
  717.         <script>on mouseUp
  718. if cd fld captions is not empty then
  719. getMessage
  720. else
  721. put empty into cd fld body
  722. answer "Sorry, there are no messages to display窶ヲ"
  723. end if
  724. end mouseUp
  725. </script>
  726.     </part>
  727.     <part>
  728.         <id>3</id>
  729.         <type>button</type>
  730.         <visible> <true /> </visible>
  731.         <reserved5> 0 </reserved5>
  732.         <reserved4> 0 </reserved4>
  733.         <reserved3> 0 </reserved3>
  734.         <reserved2> 0 </reserved2>
  735.         <reserved1> 0 </reserved1>
  736.         <enabled> <true /> </enabled>
  737.         <rect>
  738.             <left>209</left>
  739.             <top>247</top>
  740.             <right>286</right>
  741.             <bottom>260</bottom>
  742.         </rect>
  743.         <style>standard</style>
  744.         <showName> <true /> </showName>
  745.         <highlight> <false /> </highlight>
  746.         <autoHighlight> <true /> </autoHighlight>
  747.         <sharedHighlight> <true /> </sharedHighlight>
  748.         <family>0</family>
  749.         <titleWidth>0</titleWidth>
  750.         <icon>0</icon>
  751.         <textAlign>center</textAlign>
  752.         <font>Geneva</font>
  753.         <textSize>9</textSize>
  754.         <textStyle>plain</textStyle>
  755.         <name>Delete Message</name>
  756.         <script>-- FX窶「Mailer - Delete Message Button Script
  757. -- Last Modified: 8/12/95 by MMM
  758. -- A freeware script provided by the Ruskin Group, Inc.
  759.  
  760. on mouseUp
  761. if cd field captions is empty then
  762. answer "Sorry, I can't find anything to delete!"
  763. else
  764. if the optionkey is down then
  765. set the hilite of me to true
  766. lock screen
  767. lock messages
  768. set the cursor to busy
  769. repeat with i = 1 to the number of lines in cd field captions
  770. set the cursor to busy
  771. deleteMessage  -- see card script for this handler
  772. end repeat
  773. set the hilite of me to false
  774. else
  775. set the cursor to watch
  776. deleteMessage -- see card script for this handler
  777. end if
  778. end if
  779. end mouseUp</script>
  780.     </part>
  781.     <part>
  782.         <id>4</id>
  783.         <type>field</type>
  784.         <visible> <true /> </visible>
  785.         <dontWrap> <false /> </dontWrap>
  786.         <dontSearch> <false /> </dontSearch>
  787.         <sharedText> <false /> </sharedText>
  788.         <fixedLineHeight> <false /> </fixedLineHeight>
  789.         <autoTab> <false /> </autoTab>
  790.         <lockText> <false /> </lockText>
  791.         <rect>
  792.             <left>5</left>
  793.             <top>105</top>
  794.             <right>410</right>
  795.             <bottom>244</bottom>
  796.         </rect>
  797.         <style>scrolling</style>
  798.         <autoSelect> <false /> </autoSelect>
  799.         <showLines> <false /> </showLines>
  800.         <wideMargins> <true /> </wideMargins>
  801.         <multipleLines> <false /> </multipleLines>
  802.         <reservedFamily> 0 </reservedFamily>
  803.         <titleWidth>0</titleWidth>
  804.         <icon>0</icon>
  805.         <textAlign>left</textAlign>
  806.         <font>Monaco</font>
  807.         <textSize>9</textSize>
  808.         <textStyle>plain</textStyle>
  809.         <textHeight>12</textHeight>
  810.         <name>body</name>
  811.         <script></script>
  812.     </part>
  813.     <part>
  814.         <id>6</id>
  815.         <type>button</type>
  816.         <visible> <true /> </visible>
  817.         <reserved5> 0 </reserved5>
  818.         <reserved4> 0 </reserved4>
  819.         <reserved3> 0 </reserved3>
  820.         <reserved2> 0 </reserved2>
  821.         <reserved1> 0 </reserved1>
  822.         <enabled> <true /> </enabled>
  823.         <rect>
  824.             <left>139</left>
  825.             <top>247</top>
  826.             <right>196</right>
  827.             <bottom>260</bottom>
  828.         </rect>
  829.         <style>standard</style>
  830.         <showName> <true /> </showName>
  831.         <highlight> <false /> </highlight>
  832.         <autoHighlight> <true /> </autoHighlight>
  833.         <sharedHighlight> <true /> </sharedHighlight>
  834.         <family>0</family>
  835.         <titleWidth>0</titleWidth>
  836.         <icon>0</icon>
  837.         <textAlign>center</textAlign>
  838.         <font>Geneva</font>
  839.         <textSize>9</textSize>
  840.         <textStyle>plain</textStyle>
  841.         <name>Reply To窶ヲ</name>
  842.         <script>-- FX窶「Mailer - Reply To Button Script
  843. -- Last Modified: 8/12/95 by MMM
  844. -- A freeware script provided by the Ruskin Group, Inc.
  845.  
  846. on mouseUp
  847. if card field captions is empty then
  848. answer "Sorry, but I can't find a message to reply to!"
  849. else
  850. set the cursor to watch
  851. lock screen
  852. put getFromAddress() into newTo
  853. put "RE:"&(char 10 to (the number of chars in line 5 of cd fld body) of line 5 of cd fld body) ツャ
  854. into newSubject
  855. go card composeCard
  856. put newTo into cd fld sendToFld
  857. put newSubject into cd fld subjectFld
  858. put empty into cd fld messageFld
  859. unlock screen
  860. click at 100,80
  861. end if
  862. end mouseUp
  863.  
  864. </script>
  865.     </part>
  866.     <part>
  867.         <id>7</id>
  868.         <type>button</type>
  869.         <visible> <true /> </visible>
  870.         <reserved5> 0 </reserved5>
  871.         <reserved4> 0 </reserved4>
  872.         <reserved3> 0 </reserved3>
  873.         <reserved2> 0 </reserved2>
  874.         <reserved1> 0 </reserved1>
  875.         <enabled> <true /> </enabled>
  876.         <rect>
  877.             <left>66</left>
  878.             <top>247</top>
  879.             <right>135</right>
  880.             <bottom>260</bottom>
  881.         </rect>
  882.         <style>standard</style>
  883.         <showName> <true /> </showName>
  884.         <highlight> <false /> </highlight>
  885.         <autoHighlight> <true /> </autoHighlight>
  886.         <sharedHighlight> <true /> </sharedHighlight>
  887.         <family>0</family>
  888.         <titleWidth>0</titleWidth>
  889.         <icon>0</icon>
  890.         <textAlign>center</textAlign>
  891.         <font>Geneva</font>
  892.         <textSize>9</textSize>
  893.         <textStyle>plain</textStyle>
  894.         <name>Forward To窶ヲ</name>
  895.         <script>-- FX窶「Mailer - Forward To Button Script
  896. -- Last Modified: 8/12/95 by MMM
  897. -- A freeware script provided by the Ruskin Group, Inc.
  898.  
  899. on mouseUp
  900. if cd field captions is empty then
  901. answer "Sorry, but I can't find anything to forward!"
  902. else
  903. set the cursor to watch
  904. lock screen
  905. put "FWD:"&(char 10 to (the number of chars in line 5 of cd fld body) of line 5 of cd fld body) ツャ
  906. into newSubject
  907. put "----- Forwarded Message -----"&return into newBody
  908. put card field body after newBody
  909. go card composeCard
  910. put empty into cd fld sendToFld
  911. put newSubject into cd fld subjectFld
  912. put newBody into cd fld messageFld
  913. unlock screen
  914. click at the loc of cd fld sendToFld
  915. end if
  916. end mouseUp</script>
  917.     </part>
  918.     <part>
  919.         <id>8</id>
  920.         <type>field</type>
  921.         <visible> <true /> </visible>
  922.         <dontWrap> <false /> </dontWrap>
  923.         <dontSearch> <false /> </dontSearch>
  924.         <sharedText> <false /> </sharedText>
  925.         <fixedLineHeight> <false /> </fixedLineHeight>
  926.         <autoTab> <false /> </autoTab>
  927.         <lockText> <true /> </lockText>
  928.         <rect>
  929.             <left>53</left>
  930.             <top>89</top>
  931.             <right>236</right>
  932.             <bottom>104</bottom>
  933.         </rect>
  934.         <style>transparent</style>
  935.         <autoSelect> <false /> </autoSelect>
  936.         <showLines> <false /> </showLines>
  937.         <wideMargins> <false /> </wideMargins>
  938.         <multipleLines> <false /> </multipleLines>
  939.         <reservedFamily> 0 </reservedFamily>
  940.         <titleWidth>0</titleWidth>
  941.         <icon>0</icon>
  942.         <textAlign>left</textAlign>
  943.         <font>Geneva</font>
  944.         <textSize>9</textSize>
  945.         <textStyle>plain</textStyle>
  946.         <textHeight>12</textHeight>
  947.         <name>subjectLBL</name>
  948.         <script></script>
  949.     </part>
  950.     <part>
  951.         <id>9</id>
  952.         <type>button</type>
  953.         <visible> <true /> </visible>
  954.         <reserved5> 0 </reserved5>
  955.         <reserved4> 0 </reserved4>
  956.         <reserved3> 0 </reserved3>
  957.         <reserved2> 0 </reserved2>
  958.         <reserved1> 0 </reserved1>
  959.         <enabled> <true /> </enabled>
  960.         <rect>
  961.             <left>356</left>
  962.             <top>247</top>
  963.             <right>410</right>
  964.             <bottom>260</bottom>
  965.         </rect>
  966.         <style>standard</style>
  967.         <showName> <true /> </showName>
  968.         <highlight> <false /> </highlight>
  969.         <autoHighlight> <true /> </autoHighlight>
  970.         <sharedHighlight> <true /> </sharedHighlight>
  971.         <family>0</family>
  972.         <titleWidth>0</titleWidth>
  973.         <icon>0</icon>
  974.         <textAlign>center</textAlign>
  975.         <font>Geneva</font>
  976.         <textSize>9</textSize>
  977.         <textStyle>plain</textStyle>
  978.         <name>Read Next</name>
  979.         <script>-- FX窶「Mailer - Read Next Button Script
  980. -- Last Modified: 8/12/95 by MMM
  981. -- A freeware script provided by the Ruskin Group, Inc.
  982.  
  983. on mouseUp
  984. set cursor to watch
  985. nextMessage -- see card script for this handler
  986. end mouseUp</script>
  987.     </part>
  988.     <part>
  989.         <id>10</id>
  990.         <type>button</type>
  991.         <visible> <true /> </visible>
  992.         <reserved5> 0 </reserved5>
  993.         <reserved4> 0 </reserved4>
  994.         <reserved3> 0 </reserved3>
  995.         <reserved2> 0 </reserved2>
  996.         <reserved1> 0 </reserved1>
  997.         <enabled> <true /> </enabled>
  998.         <rect>
  999.             <left>297</left>
  1000.             <top>247</top>
  1001.             <right>353</right>
  1002.             <bottom>260</bottom>
  1003.         </rect>
  1004.         <style>standard</style>
  1005.         <showName> <true /> </showName>
  1006.         <highlight> <false /> </highlight>
  1007.         <autoHighlight> <true /> </autoHighlight>
  1008.         <sharedHighlight> <true /> </sharedHighlight>
  1009.         <family>0</family>
  1010.         <titleWidth>0</titleWidth>
  1011.         <icon>0</icon>
  1012.         <textAlign>center</textAlign>
  1013.         <font>Geneva</font>
  1014.         <textSize>9</textSize>
  1015.         <textStyle>plain</textStyle>
  1016.         <name>Read Prev</name>
  1017.         <script>-- FX窶「Mailer - Read Prev Button Script
  1018. -- Last Modified: 8/12/95 by MMM
  1019. -- A freeware script provided by the Ruskin Group, Inc.
  1020.  
  1021. on mouseUp
  1022. set cursor to watch
  1023. prevMessage -- see card script for this handler
  1024. end mouseUp</script>
  1025.     </part>
  1026.     <part>
  1027.         <id>11</id>
  1028.         <type>button</type>
  1029.         <visible> <true /> </visible>
  1030.         <reserved5> 0 </reserved5>
  1031.         <reserved4> 0 </reserved4>
  1032.         <reserved3> 0 </reserved3>
  1033.         <reserved2> 0 </reserved2>
  1034.         <reserved1> 0 </reserved1>
  1035.         <enabled> <true /> </enabled>
  1036.         <rect>
  1037.             <left>319</left>
  1038.             <top>89</top>
  1039.             <right>410</right>
  1040.             <bottom>102</bottom>
  1041.         </rect>
  1042.         <style>standard</style>
  1043.         <showName> <true /> </showName>
  1044.         <highlight> <false /> </highlight>
  1045.         <autoHighlight> <true /> </autoHighlight>
  1046.         <sharedHighlight> <true /> </sharedHighlight>
  1047.         <family>0</family>
  1048.         <titleWidth>0</titleWidth>
  1049.         <icon>0</icon>
  1050.         <textAlign>center</textAlign>
  1051.         <font>Geneva</font>
  1052.         <textSize>9</textSize>
  1053.         <textStyle>plain</textStyle>
  1054.         <name>Update Captions</name>
  1055.         <script>-- FX窶「Mailer - Update Captions Button Script
  1056. -- Last Modified: 8/12/95 by MMM
  1057. -- A freeware script provided by the Ruskin Group, Inc.
  1058.  
  1059. on mouseUp
  1060.  
  1061. -- Hand off a full "Update Cations" request to an AppleScript
  1062. -- handler that will examine the FX窶「Inbox for message files
  1063. -- to be imported into the "rawMessages" background of this stack.
  1064. set the cursor to busy
  1065. send "loadMessages" to cd button asLoadMessages
  1066.  
  1067. end mouseUp</script>
  1068.     </part>
  1069.     <part>
  1070.         <id>12</id>
  1071.         <type>button</type>
  1072.         <visible> <false /> </visible>
  1073.         <reserved5> 0 </reserved5>
  1074.         <reserved4> 0 </reserved4>
  1075.         <reserved3> 0 </reserved3>
  1076.         <reserved2> 0 </reserved2>
  1077.         <reserved1> 0 </reserved1>
  1078.         <enabled> <false /> </enabled>
  1079.         <rect>
  1080.             <left>195</left>
  1081.             <top>2</top>
  1082.             <right>266</right>
  1083.             <bottom>17</bottom>
  1084.         </rect>
  1085.         <style>opaque</style>
  1086.         <showName> <true /> </showName>
  1087.         <highlight> <false /> </highlight>
  1088.         <autoHighlight> <false /> </autoHighlight>
  1089.         <sharedHighlight> <true /> </sharedHighlight>
  1090.         <family>0</family>
  1091.         <titleWidth>0</titleWidth>
  1092.         <icon>0</icon>
  1093.         <textAlign>center</textAlign>
  1094.         <font>Geneva</font>
  1095.         <textSize>9</textSize>
  1096.         <textStyle>bold</textStyle>
  1097.         <name>asDeleteFile</name>
  1098.         <script></script>
  1099.     </part>
  1100.     <part>
  1101.         <id>13</id>
  1102.         <type>button</type>
  1103.         <visible> <false /> </visible>
  1104.         <reserved5> 0 </reserved5>
  1105.         <reserved4> 0 </reserved4>
  1106.         <reserved3> 0 </reserved3>
  1107.         <reserved2> 0 </reserved2>
  1108.         <reserved1> 0 </reserved1>
  1109.         <enabled> <false /> </enabled>
  1110.         <rect>
  1111.             <left>269</left>
  1112.             <top>2</top>
  1113.             <right>347</right>
  1114.             <bottom>17</bottom>
  1115.         </rect>
  1116.         <style>opaque</style>
  1117.         <showName> <true /> </showName>
  1118.         <highlight> <false /> </highlight>
  1119.         <autoHighlight> <false /> </autoHighlight>
  1120.         <sharedHighlight> <true /> </sharedHighlight>
  1121.         <family>0</family>
  1122.         <titleWidth>0</titleWidth>
  1123.         <icon>0</icon>
  1124.         <textAlign>center</textAlign>
  1125.         <font>Geneva</font>
  1126.         <textSize>9</textSize>
  1127.         <textStyle>bold</textStyle>
  1128.         <name>asUnpackMail</name>
  1129.         <script></script>
  1130.     </part>
  1131.     <part>
  1132.         <id>14</id>
  1133.         <type>button</type>
  1134.         <visible> <true /> </visible>
  1135.         <reserved5> 0 </reserved5>
  1136.         <reserved4> 0 </reserved4>
  1137.         <reserved3> 0 </reserved3>
  1138.         <reserved2> 0 </reserved2>
  1139.         <reserved1> 0 </reserved1>
  1140.         <enabled> <true /> </enabled>
  1141.         <rect>
  1142.             <left>6</left>
  1143.             <top>247</top>
  1144.             <right>62</right>
  1145.             <bottom>260</bottom>
  1146.         </rect>
  1147.         <style>standard</style>
  1148.         <showName> <true /> </showName>
  1149.         <highlight> <false /> </highlight>
  1150.         <autoHighlight> <true /> </autoHighlight>
  1151.         <sharedHighlight> <true /> </sharedHighlight>
  1152.         <family>0</family>
  1153.         <titleWidth>0</titleWidth>
  1154.         <icon>0</icon>
  1155.         <textAlign>center</textAlign>
  1156.         <font>Geneva</font>
  1157.         <textSize>9</textSize>
  1158.         <textStyle>plain</textStyle>
  1159.         <name>Compose窶ヲ</name>
  1160.         <script>-- FX窶「Mailer - Compose  Button Script
  1161. -- Last Modified: 8/12/95 by MMM
  1162. -- A freeware script provided by the Ruskin Group, Inc.
  1163.  
  1164. on mouseUp
  1165. lock screen
  1166. go card composeCard
  1167. put empty into cd fld sendToFld
  1168. put empty into cd fld subjectFld
  1169. put empty into cd fld messageFld
  1170. unlock screen
  1171. click at the loc of cd fld sendToFld
  1172. end mouseUp</script>
  1173.     </part>
  1174.     <part>
  1175.         <id>16</id>
  1176.         <type>button</type>
  1177.         <visible> <true /> </visible>
  1178.         <reserved5> 0 </reserved5>
  1179.         <reserved4> 0 </reserved4>
  1180.         <reserved3> 0 </reserved3>
  1181.         <reserved2> 0 </reserved2>
  1182.         <reserved1> 0 </reserved1>
  1183.         <enabled> <true /> </enabled>
  1184.         <rect>
  1185.             <left>239</left>
  1186.             <top>88</top>
  1187.             <right>313</right>
  1188.             <bottom>102</bottom>
  1189.         </rect>
  1190.         <style>checkbox</style>
  1191.         <showName> <true /> </showName>
  1192.         <highlight> <true /> </highlight>
  1193.         <autoHighlight> <true /> </autoHighlight>
  1194.         <sharedHighlight> <true /> </sharedHighlight>
  1195.         <family>0</family>
  1196.         <titleWidth>0</titleWidth>
  1197.         <icon>0</icon>
  1198.         <textAlign>center</textAlign>
  1199.         <font>Geneva</font>
  1200.         <textSize>9</textSize>
  1201.         <textStyle>plain</textStyle>
  1202.         <name>Auto Update</name>
  1203.         <script></script>
  1204.     </part>
  1205.     <part>
  1206.         <id>17</id>
  1207.         <type>button</type>
  1208.         <visible> <false /> </visible>
  1209.         <reserved5> 0 </reserved5>
  1210.         <reserved4> 0 </reserved4>
  1211.         <reserved3> 0 </reserved3>
  1212.         <reserved2> 0 </reserved2>
  1213.         <reserved1> 0 </reserved1>
  1214.         <enabled> <false /> </enabled>
  1215.         <rect>
  1216.             <left>351</left>
  1217.             <top>2</top>
  1218.             <right>415</right>
  1219.             <bottom>17</bottom>
  1220.         </rect>
  1221.         <style>opaque</style>
  1222.         <showName> <true /> </showName>
  1223.         <highlight> <false /> </highlight>
  1224.         <autoHighlight> <true /> </autoHighlight>
  1225.         <sharedHighlight> <true /> </sharedHighlight>
  1226.         <family>0</family>
  1227.         <titleWidth>0</titleWidth>
  1228.         <icon>0</icon>
  1229.         <textAlign>center</textAlign>
  1230.         <font>Geneva</font>
  1231.         <textSize>9</textSize>
  1232.         <textStyle>bold</textStyle>
  1233.         <name>asGetAddr</name>
  1234.         <script></script>
  1235.     </part>
  1236.     <part>
  1237.         <id>18</id>
  1238.         <type>button</type>
  1239.         <visible> <true /> </visible>
  1240.         <reserved5> 0 </reserved5>
  1241.         <reserved4> 0 </reserved4>
  1242.         <reserved3> 0 </reserved3>
  1243.         <reserved2> 0 </reserved2>
  1244.         <reserved1> 0 </reserved1>
  1245.         <enabled> <true /> </enabled>
  1246.         <rect>
  1247.             <left>2</left>
  1248.             <top>2</top>
  1249.             <right>28</right>
  1250.             <bottom>18</bottom>
  1251.         </rect>
  1252.         <style>transparent</style>
  1253.         <showName> <false /> </showName>
  1254.         <highlight> <false /> </highlight>
  1255.         <autoHighlight> <false /> </autoHighlight>
  1256.         <sharedHighlight> <true /> </sharedHighlight>
  1257.         <family>0</family>
  1258.         <titleWidth>0</titleWidth>
  1259.         <icon>0</icon>
  1260.         <textAlign>center</textAlign>
  1261.         <font>Chicago</font>
  1262.         <textSize>12</textSize>
  1263.         <textStyle>plain</textStyle>
  1264.         <name>Show AppleScript Buttons</name>
  1265.         <script>on mouseUp
  1266. if the optionkey is down then
  1267. if the visible of cd button asDeleteFile is true then
  1268. set the visible of cd button asLoadMessages to false
  1269. set the visible of cd button asDeleteFile to false
  1270. set the visible of cd button asUnpackMail to false
  1271. set the visible of cd button asGetAddr to false
  1272. else
  1273. set the visible of cd button asLoadMessages to true
  1274. set the visible of cd button asDeleteFile to true
  1275. set the visible of cd button asUnpackMail to true
  1276. set the visible of cd button asGetAddr to true
  1277. end if
  1278. end if
  1279. end mouseUp</script>
  1280.     </part>
  1281.     <part>
  1282.         <id>19</id>
  1283.         <type>button</type>
  1284.         <visible> <false /> </visible>
  1285.         <reserved5> 0 </reserved5>
  1286.         <reserved4> 0 </reserved4>
  1287.         <reserved3> 0 </reserved3>
  1288.         <reserved2> 0 </reserved2>
  1289.         <reserved1> 0 </reserved1>
  1290.         <enabled> <false /> </enabled>
  1291.         <rect>
  1292.             <left>102</left>
  1293.             <top>2</top>
  1294.             <right>192</right>
  1295.             <bottom>17</bottom>
  1296.         </rect>
  1297.         <style>opaque</style>
  1298.         <showName> <true /> </showName>
  1299.         <highlight> <false /> </highlight>
  1300.         <autoHighlight> <false /> </autoHighlight>
  1301.         <sharedHighlight> <true /> </sharedHighlight>
  1302.         <family>0</family>
  1303.         <titleWidth>0</titleWidth>
  1304.         <icon>0</icon>
  1305.         <textAlign>center</textAlign>
  1306.         <font>Geneva</font>
  1307.         <textSize>9</textSize>
  1308.         <textStyle>bold</textStyle>
  1309.         <name>asLoadMessages</name>
  1310.         <script></script>
  1311.     </part>
  1312.     <part>
  1313.         <id>20</id>
  1314.         <type>button</type>
  1315.         <visible> <true /> </visible>
  1316.         <reserved5> 0 </reserved5>
  1317.         <reserved4> 0 </reserved4>
  1318.         <reserved3> 0 </reserved3>
  1319.         <reserved2> 0 </reserved2>
  1320.         <reserved1> 0 </reserved1>
  1321.         <enabled> <true /> </enabled>
  1322.         <rect>
  1323.             <left>393</left>
  1324.             <top>1</top>
  1325.             <right>412</right>
  1326.             <bottom>19</bottom>
  1327.         </rect>
  1328.         <style>transparent</style>
  1329.         <showName> <false /> </showName>
  1330.         <highlight> <false /> </highlight>
  1331.         <autoHighlight> <false /> </autoHighlight>
  1332.         <sharedHighlight> <true /> </sharedHighlight>
  1333.         <family>0</family>
  1334.         <titleWidth>0</titleWidth>
  1335.         <icon>26635</icon>
  1336.         <textAlign>center</textAlign>
  1337.         <font>Chicago</font>
  1338.         <textSize>12</textSize>
  1339.         <textStyle>plain</textStyle>
  1340.         <name></name>
  1341.         <script>on mouseUp
  1342. set the visible of cd button coverUp to true
  1343. set the visible of cd fld readerHelp to true
  1344. end mouseUp</script>
  1345.     </part>
  1346.     <part>
  1347.         <id>22</id>
  1348.         <type>button</type>
  1349.         <visible> <false /> </visible>
  1350.         <reserved5> 0 </reserved5>
  1351.         <reserved4> 0 </reserved4>
  1352.         <reserved3> 0 </reserved3>
  1353.         <reserved2> 0 </reserved2>
  1354.         <reserved1> 0 </reserved1>
  1355.         <enabled> <true /> </enabled>
  1356.         <rect>
  1357.             <left>2</left>
  1358.             <top>0</top>
  1359.             <right>416</right>
  1360.             <bottom>264</bottom>
  1361.         </rect>
  1362.         <style>transparent</style>
  1363.         <showName> <false /> </showName>
  1364.         <highlight> <false /> </highlight>
  1365.         <autoHighlight> <false /> </autoHighlight>
  1366.         <sharedHighlight> <true /> </sharedHighlight>
  1367.         <family>0</family>
  1368.         <titleWidth>0</titleWidth>
  1369.         <icon>0</icon>
  1370.         <textAlign>center</textAlign>
  1371.         <font>Chicago</font>
  1372.         <textSize>12</textSize>
  1373.         <textStyle>plain</textStyle>
  1374.         <name>coverUp</name>
  1375.         <script>on mouseUp
  1376. send mouseUp to cd fld readerHelp
  1377. end mouseUp</script>
  1378.     </part>
  1379.     <part>
  1380.         <id>24</id>
  1381.         <type>field</type>
  1382.         <visible> <false /> </visible>
  1383.         <dontWrap> <false /> </dontWrap>
  1384.         <dontSearch> <false /> </dontSearch>
  1385.         <sharedText> <false /> </sharedText>
  1386.         <fixedLineHeight> <false /> </fixedLineHeight>
  1387.         <autoTab> <false /> </autoTab>
  1388.         <lockText> <true /> </lockText>
  1389.         <rect>
  1390.             <left>8</left>
  1391.             <top>35</top>
  1392.             <right>240</right>
  1393.             <bottom>239</bottom>
  1394.         </rect>
  1395.         <style>shadow</style>
  1396.         <autoSelect> <false /> </autoSelect>
  1397.         <showLines> <false /> </showLines>
  1398.         <wideMargins> <true /> </wideMargins>
  1399.         <multipleLines> <false /> </multipleLines>
  1400.         <reservedFamily> 0 </reservedFamily>
  1401.         <titleWidth>0</titleWidth>
  1402.         <icon>0</icon>
  1403.         <textAlign>left</textAlign>
  1404.         <font>Geneva</font>
  1405.         <textSize>12</textSize>
  1406.         <textStyle>plain</textStyle>
  1407.         <textHeight>16</textHeight>
  1408.         <name>readerHelp</name>
  1409.         <script>on mouseUp
  1410. set the visible of cd button coverUp to false
  1411. set the visible of me to false
  1412. end mouseUp</script>
  1413.     </part>
  1414.     <content>
  1415.         <layer>card</layer>
  1416.         <id>24</id>
  1417.         <text><span class="style2">sing the FX窶「Reader
  1418. </span><span class="style1">
  1419. To read a message simply click on its 窶廚aption窶 in the list of messages.
  1420.  
  1421. Use the buttons at the bottom of the window to act upon the message you have displayed.
  1422.  
  1423. Click on the 窶弑pdate Captions窶 button to load any new messages that may have arrived in your FX窶「Inbox, or turn on the 窶廣uto Update窶 option to have the mailer check on its own.</span></text>
  1424.     </content>
  1425.     <content>
  1426.         <layer>card</layer>
  1427.         <id>1</id>
  1428.         <text> 04/10/96-05:16PM  Recompiling AppleScript S窶ヲ =>Ruskin[]          947963
  1429. </text>
  1430.     </content>
  1431.     <content>
  1432.         <layer>card</layer>
  1433.         <id>4</id>
  1434.         <text>Date:    04/10/96-05:16PM
  1435. From:    Ruskin[]
  1436.          Ruskin.
  1437. To:      Ruskin[]
  1438. Subject: Recompiling AppleScript Scripts in FX窶「Mailer
  1439.  
  1440. NOTE FOR FX窶「MAILER USERS:
  1441. If you are continually being asked to "locate" the FX窶「Engine, FX窶「Packager or HyperCard while using the FX窶「Mailer stack, you may need to recompile the AppleScript scripts in the FX窶「Mailer Stack.  To display the AppleScript scripts (which have been placed in buttons), hold down the "option" key and click on the "FX" label in the upper left corner of the current window.  Note, both the Reader and Compose cards contain AppleScript scripts in buttons that may have to be recompiled so be sure to "option-click" on the "FX" label in both windows.  Display and Save the scripts that are attached to each of the AppleScript based buttons.  Once you've recompiled the scripts, AppleScript will no longer ask you to locate the engine or packager.  You may re-hide the AppleScript buttons by "option-clicking" on the "FX" labels.</text>
  1442.     </content>
  1443.     <content>
  1444.         <layer>card</layer>
  1445.         <id>8</id>
  1446.         <text>Recompiling AppleScript Scripts in FX窶「Mailer</text>
  1447.     </content>
  1448.     <name>readerCard</name>
  1449.     <script>-- FX窶「Mailer - Reader Card Script
  1450. -- Last Modified: 8/13/95 by MMM
  1451. -- A freeware script provided by the Ruskin Group, Inc.
  1452.  
  1453.  
  1454. -- This handler allows the stack to "poll" the FX窶「Inbox for
  1455. -- new message files.  If Auto Update is on, the "Update Captions"
  1456. -- functionality will be invoked every minute.
  1457. on idle
  1458. global FXtickcount
  1459.  
  1460. if the hilite of card button "Auto Update" is true then
  1461. if the ticks > (FXtickcount+3600) then
  1462. put the ticks into FXtickcount
  1463. set the cursor to busy
  1464. send "loadMessages" to card button "asLoadMessages"
  1465. end if
  1466. end if
  1467. end idle
  1468.  
  1469.  
  1470. -- Do some sync'ing every time the user returns to this card:
  1471. -- Check the Auto-Update Setting, and the FXcaptionsNeedUpdating Flag
  1472. on openCard
  1473. global FXoriginalTextArrows
  1474. global FXcaptionsNeedUpdating
  1475. global FXtickcount
  1476.  
  1477. -- Update the FX窶「Mailer Menu
  1478. set the enabled of menuItem "Read Messages" of menu "FX窶「Mailer" to false
  1479. set the enabled of menuItem "Compose Message" of menu "FX窶「Mailer" to true
  1480.  
  1481. -- Check to see if a captions update is in order...
  1482. if the hilite of card button "Auto Update" is true then
  1483. send mouseUp to card button "Update Captions" -- to look for new mail
  1484. put the ticks into FXtickcount
  1485. end if
  1486.  
  1487. if FXcaptionsNeedUpdating is true then
  1488. updateCaptionsList
  1489. end if
  1490.  
  1491. -- We like textArrows on for the reader, but save the old value
  1492. -- to restore on close card...
  1493. put the textArrows into FXoriginalTextArrows
  1494. set the textArrows to true
  1495. end openCard
  1496.  
  1497. on closeCard
  1498. global FXoriginalTextArrows
  1499. -- Restore the value of textArrows to what it was before openCard
  1500. set the textArrows to FXoriginalTextArrows
  1501. end closeCard
  1502.  
  1503.  
  1504. -- The following handler is used to determine what will be put into the "From" field
  1505. -- of messages you send to other users.  This will allow them to use the "Reply" button
  1506. -- to correctly set your address in their "Send To" field.
  1507. on setUserName theATName, theIPName
  1508. global FXuserATName, FXuserIPName
  1509.  
  1510. if (theATName is empty) and (theIPName is empty) then
  1511. ask "What shall I use as your FX Address?"
  1512. put it into theATName
  1513. if it is empty then put getDriveName()&"[*]" into theATName
  1514. answer "FX窶「Mailer will use 窶œ"&theATName&"窶 as your address."
  1515. end if
  1516.  
  1517. if theIPName is empty then
  1518. put "<No TCP/IP Address Available>" into theIPName
  1519. end if
  1520.  
  1521. if theATName is empty then
  1522. put "<No AppleTalk Address Available>" into theATName
  1523. end if
  1524.  
  1525. put theATName into FXuserATName
  1526. put theIPName into FXuserIPName
  1527.  
  1528. send "mouseUp" to cd button "Update Captions"
  1529. end setUserName
  1530.  
  1531.  
  1532. -- Handler scans the "rawMessages" background rebuilding a "caption"
  1533. -- entry for each message found.  Captions are then placed in the
  1534. -- fld captions of this card.  Clicking on a caption will then cause
  1535. -- the message found in the rawMessages background with the same
  1536. -- caption as the one clicked on to be displayed in the body field
  1537. -- of this card.  Unlike the script for the "Update Captions" button,
  1538. -- this handler only builds captions for messages that have already
  1539. -- been imported into the stacks "rawMessages" background.  See the
  1540. -- script in the "Update Captions" button to see how messages are
  1541. -- moved from the FX窶「Inbox to the "rawMessages" background.
  1542. on updateCaptionsList
  1543. global FXcaptionsNeedUpdating
  1544.  
  1545. put false into FXcaptionsNeedUpdating -- unset 'dirty' flag for captions
  1546.  
  1547. lock screen
  1548. lock messages
  1549. lock recent
  1550. set the cursor to busy
  1551. go to first card of background rawMessages
  1552. put empty into tempCaptions
  1553. repeat (the number of cards in this background) times
  1554. set the cursor to busy
  1555. if (word 2 of the name of this card is not quote&"templateCard"&quote) then
  1556. put (bg fld rawCaption)&return after tempCaptions
  1557. end if
  1558. go next
  1559. end repeat
  1560. go to card "readerCard"
  1561. put tempCaptions into cd fld captions
  1562. if cd fld captions is not empty then
  1563. getMessage
  1564. end if
  1565. end updateCaptionsList
  1566.  
  1567.  
  1568. -- Called by the AppleScript of button asLoadMessages once for every
  1569. -- file it finds in the FX窶「Inbox mailbox.
  1570. on considerFile fileName
  1571. set the cursor to busy
  1572. if ("Incoming" is not in fileName) then
  1573. if fileName contains ".fxp" then
  1574. send "unpackMail "&quote&filename&quote to cd button asUnpackMail
  1575. put char 1 to (length of filename - 4) of fileName into fileName
  1576. loadmail fileName
  1577. else
  1578. loadmail fileName
  1579. end if
  1580. send "deleteFile "&quote&fileName&quote to cd button asDeleteFile
  1581. end if
  1582. end considerFile
  1583.  
  1584.  
  1585. -- This handler loads a file from the FX窶「Inbox and puts it into
  1586. -- the canonical format of the rawMessages Backgrouns
  1587. on loadmail fileName
  1588. lock screen
  1589. lock messages
  1590. set the cursor to busy
  1591.  
  1592. push card
  1593. go to last card of background rawMessages
  1594. domenu "New Card"
  1595. open file fileName
  1596. -- put result into tempResult
  1597. -- if tempResult is not empty then
  1598. -- answer "Error opening 窶œ"&fileName&"窶 = "&tempResult
  1599. -- exit to hypercard
  1600. -- end if
  1601. read from file fileName until eof
  1602. put it into field rawBody
  1603. close file fileName
  1604.  
  1605. -- Load in date time stamp窶ヲ
  1606. put "窶「"&char 10 to (the number of chars in line 2 of field rawBody) in line 2 of field rawBody into field rawCaption
  1607. put "  " after field rawCaption
  1608. -- Load in subject窶ヲ
  1609. put char 10 to 35 in line 6 of field rawBody after field rawCaption
  1610. repeat with i = (length of field rawCaption) to 45
  1611. put " " after field rawCaption
  1612. end repeat
  1613. if char 45 of line 6 of field rawBody is not empty then put "窶ヲ" into char 45 of field rawCaption
  1614.  
  1615. -- Load in From address窶ヲ
  1616. put char 10 to 27 in line 3 of field rawBody into tempFrom
  1617. if tempFrom is "<No AppleTalk Addr" then
  1618. put char 10 to 27 in line 4 of field rawBody into tempFrom
  1619. end if
  1620. if tempFrom is "<No TCP/IP Address" then
  1621. put "<Unkown Sender>" into tempFrom
  1622. end if
  1623. put tempFrom after field rawCaption
  1624. repeat with i = (length of field rawCaption) to 65
  1625. put " " after field rawCaption
  1626. end repeat
  1627. put line 1 of field rawBody after field rawCaption
  1628. delete line 1 of field rawBody
  1629. pop card
  1630. end loadmail
  1631.  
  1632.  
  1633. -- This handler deletes the message associated with the currently
  1634. -- selected caption from the "rawMessages" background.
  1635. on deleteMessage
  1636. lock screen
  1637. lock messages
  1638. push card
  1639. put currentCaptionNumber() into tempIndex
  1640. put value (selectedLine of cd fld captions) into searchString
  1641. put false into reallyDelete
  1642.  
  1643. find whole searchString in bg fld rawCaption
  1644. if the result is not empty then
  1645. answer "Can't find a message for that caption, sorry."
  1646. put "窶「 Lost Message for Delete 窶「" into tempFld
  1647. else
  1648. doMenu "Delete Card"
  1649. put true into reallyDelete  -- No so friendly just yet are we...
  1650. end if
  1651. pop card
  1652.  
  1653. if reallyDelete is true then
  1654.  
  1655. delete line tempIndex of cd fld captions
  1656.  
  1657. if number of lines of cd fld captions < tempIndex then
  1658. subtract 1 from tempIndex
  1659. end if
  1660.  
  1661. showMessage tempIndex -- show a new message (the old one is GONE!)
  1662.  
  1663. end if
  1664.  
  1665. end deleteMessage
  1666.  
  1667.  
  1668. -- This function returns the line number of the currently selected caption
  1669. function currentCaptionNumber
  1670. return word 2 of (selectedLine of cd fld captions)
  1671. end currentCaptionNumber
  1672.  
  1673.  
  1674. on nextMessage
  1675. showMessage (currentCaptionNumber()+1)
  1676. end nextMessage
  1677.  
  1678.  
  1679. on prevMessage
  1680. showMessage (currentCaptionNumber()-1)
  1681. end prevMessage
  1682.  
  1683.  
  1684. on lastMessage
  1685. showMessage (the number of lines of cd fld captions)
  1686. end lastMessage
  1687.  
  1688.  
  1689. on firstMessage
  1690. showMessage 1
  1691. end firstMessage
  1692.  
  1693.  
  1694. on showMessage captionNumber
  1695. put (the number of lines of cd fld captions) into numOfCaptions
  1696.  
  1697. -- First 'Pin' unreasonable numbers窶ヲ
  1698. if (captionNumber < 1) then put 1 into captionNumber
  1699. if (captionNumber > numOfCaptions) then put numOfCaptions into captionNumber
  1700.  
  1701. if cd fld captions is not empty then
  1702. select line captionNumber of cd fld captions
  1703. getMessage
  1704. else
  1705. put empty into cd fld body
  1706. put empty into cd fld subjectLBL
  1707. end if
  1708. end showMessage
  1709.  
  1710. -- This handler finds the message associated with the selected caption
  1711. -- in the captions field and copies it to the body fld of this card
  1712. on getMessage
  1713. lock screen
  1714. lock messages
  1715. push card
  1716. put value (selectedLine of cd fld captions) into searchString
  1717. find whole searchString in bg fld rawCaption
  1718. if the result is not empty then
  1719. answer "Can't find a message for that caption, sorry."
  1720. put "窶「 Lost Message for Read 窶「" into tempFld
  1721. else
  1722. put bg fld rawBody into tempFld
  1723. put " " into char 1 of fld rawCaption
  1724. end if
  1725. pop card
  1726. put " " into char 1 of line currentCaptionNumber() of cd field captions
  1727. put tempFld into cd fld body
  1728. put char 10 to (the number of chars in line 5 of cd field body) of line 5 of cd field body ツャ
  1729. into cd fld subjectlbl
  1730. end getMessage
  1731.  
  1732.  
  1733. -- This function examines the currently displayed message and attempts to determine which
  1734. -- from address to use for the reply.  If it cannot decide, it asks the user to chose and addr.
  1735. function getFromAddress
  1736. put char 10 to (the number of chars in line 2 of cd fld body ) of line 2 of cd fld body ツャ
  1737. into atAddress
  1738. put char 10 to (the number of chars in line 3 of cd fld body ) of line 3 of cd fld body ツャ
  1739. into ipAddress
  1740.  
  1741. if (atAddress = "<No AppleTalk Address Available>") then
  1742.  
  1743. if (ipAddress = "<No TCP/IP Address Available>") then
  1744. ask "What address should your reply be sent to?"
  1745. if the result = "Cancel" then exit to hypercard
  1746. return it
  1747. end if
  1748.  
  1749. return ipAddress
  1750.  
  1751. end if
  1752.  
  1753. if (ipAddress = "<No TCP/IP Address Available>") then return atAddress
  1754.  
  1755. answer "Should your reply be addressed to the TCP/IP destination 窶œ"&ipAddressツャ
  1756. &"窶, or the AppleTalk destination 窶œ"&atAddress&"窶?" with  Cancel, "TCP/IP", "AppleTalk"
  1757. if it is "Cancel" then exit to hyperCard
  1758. if it is "TCP/IP" then return ipAddress else return atAddress
  1759. end getFromAddress
  1760.  
  1761. -- This hanlder attempts to keep people from typing into the message
  1762. -- field which we have left unlocked to facilitate copying text.
  1763. on keyDown theKey
  1764. if the commandkey is not down andツャ
  1765. the visible of message is false and ツャ
  1766. theKey is in "cu" then
  1767. handleShortCutKey theKey
  1768. else
  1769. pass keyDown
  1770. end if
  1771. end keyDown
  1772.  
  1773.  
  1774. -- Allow folks to jump to the composeCard by typing "c" or to
  1775. -- update the captions by pressing "u"
  1776. on handleShortCutKey theKey
  1777. if theKey is "c" then send mouseUp to cd button "Compose窶ヲ"
  1778. if theKey is "u" then send mouseUp to cd button "Update Captions"
  1779. end handleShortCutKey
  1780.  
  1781. -- Translate the arrow keys into commands to traverse the captions list
  1782. on arrowKey theKey
  1783. if theKey is "up" or theKey is "left" then
  1784. if the commandkey is down then
  1785. firstMessage
  1786. else
  1787. prevMessage
  1788. end if
  1789. end if
  1790. if theKey is "down"  or theKey is "right" then
  1791. if the commandkey is down then
  1792. lastMessage
  1793. else
  1794. nextMessage
  1795. end if
  1796. end if
  1797. end arrowKey
  1798. </script>
  1799. </card>
  1800.  
  1801.  
  1802.